package com.ruoyi.bussiness.domain;

import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 委托订单对象 ccy_trade_waiting
 * 
 * @author wzy
 * @date 2025-10-21
 */
@Data
public class CcyTradeWaiting extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 数据库主键 */
    private String id;

    /** 方案编号 */
    @Excel(name = "方案编号")
    private int planId;

    /** 账号名 */
    @Excel(name = "账号名")
    private String accName;

    /** 账号名 */
    private String accCode;

    /** 账号用户 */
    @Excel(name = "账号用户")
    private String userName;

    /** 交易对 */
    @Excel(name = "交易对")
    private String instId;

    /** 数据维度 */
    @Excel(name = "数据维度")
    private String bar;

    /** 策略订单id */
    private String algoId;

    /** 委托数量 */
    @Excel(name = "委托数量")
    private int sz;

    /** 订单方向 */
    @Excel(name = "订单方向")
    private String side;

    /** 订单状态 */
    @Excel(name = "订单状态")
    private String state;

    /** 触发价 */
    @Excel(name = "触发价")
    private String triggerPx;

    /** 止盈率 */
    @Excel(name = "止盈率")
    private String zysyl;

    /** 止盈触发价 */
    @Excel(name = "止盈触发价")
    private String tpTriggerPx;

    /** 止损率 */
    @Excel(name = "止损率")
    private String zssyl;

    /** 止损触发价 */
    @Excel(name = "止损触发价")
    private String slTriggerPx;

    /** 委托单时间 */
    @Excel(name = "委托单时间", width = 30, dateFormat = "yyyy-MM-dd")
    private String ctime;

    /** 订单更新时间 */
    private String utime;

    /** 下单规则 */
    @Excel(name = "下单规则")
    private String tradeMsg;

    /** 如果该委托单成交，则这个就是止盈止损党的策略订单id */
    private String algoClordId;

    /** 取消时间 */
    @Excel(name = "取消时间")
    private String cancelTime;

    /** 数据时间 */
    @Excel(name = "数据时间", width = 30, dateFormat = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
    private Date gcTime;

    /** 基础价 */
    @Excel(name = "基础价")
    private String gcTimePrice;

    /** 监控阈值 */
    @Excel(name = "监控阈值")
    private String monitorYz;

    /** 委托单成交时间 */
    private String completedTime;

    /** 订单更新 */
    @Excel(name = "订单更新")
    private Long updateState;

    /** 数据添加时间 */
    private Date addTime;


}
